/***Intro***/
INTRO(1M)                     Mac-Shell Command                      INTRO(1M)

【名前】
	Intro - Mac-Shell コマンド (man1m.hlp)

【内容】
	<コマンド名>	<概略>
	Msh		unix の csh ライクなシェル(コマンド・インタプリタ)

	cd/chdir	カレントディレクトリの移動
	pwd		カレントディレクトリの表示
	ls		ディレクトリ内容の表示
	cp		ファイルのコピー
	mv		ファイルの移動
	rm		ファイル削除
	df		ディスクの空き容量表示
	du		ディスク使用量の表示
	mkdir/rmdir	ディレクトリの作成/削除

	cat		ファイルの連結と出力
	head		ファイルの先頭を出力
	tail		ファイルの末尾を出力
	sort		ファイルの整列,マージ
	diff		GNU-diff(テキストファイルの内容比較)
	grep		GNU-grep(文字列検索)
	wc		テキストファイルの語数をカウント

	look		簡易 日/英辞書
	man		オンラインマニュアル
	manmnt		マニュアルのメンテナンス
	file		ファイルタイプの報告
	vi		vi エディターの起動 (STevie for Mac)

	alias/unalias	コマンド別名の定義/削除
	echo		エコー
	history		ヒストリーの出力
	pushd/popd/dirs	ディレクトリの push/pop/表示
	set/unset	環境変数の設定/消去
	source		コマンドをファイルから読み込み実行
	exit		exit program

	clear		端末画面のクリア
	date		日時の出力
	stty		Mac モニターの解像度等の表示

	den		簡易電卓
	help		ヘルプの出力
	ps		プロセスステータスの表示

	finder		Finder の各種制御
	process		プロセスの各種制御
/***msh***/
MSH(1M)                       Mac-Shell Command                        MSH(1M)

【名前】
	Msh - unix の csh ライクなシェル(コマンド・インタプリタ)

【形式】
	Msh (Finder などから起動)

【目次】
	解説
	シェルの解説
		パスの指定について
		初期設定と終了
		コマンド入力について
		コマンドの検索/実行
		コマンド実行中のキー
		字句の構造
		I/O のリダイレクト
		コマンド行の分析
		ヒストリの置換
		別名(エイリアス)
		変数の置換
		ファイル名の置換
	ファイル
	シェル変数
	関連項目

【解説】
	Msh は Macintosh 上で unix 風な処理が出来るようにするためのシェル
	(コマンド・インタプリタ)，各種コマンド及びその他の便利な機能を持っ
	たアプリケーションです。

【シェルの解説】
	Msh のコマンド・インタプリタ及びコマンド実行の方法について解説しま
	す。
	なお、ここでは個々のコマンド説明は行いません。どのようなコマンドがあ
	るか知りたい場合には "help" または "man 1m intro" とコマンドを打って
	下さい。また、コマンドの詳細説明を見たい場合には "man <コマンド名>"
	と打って下さい。

  [パスの指定について]
	基本的には unix の形式と同じです。

	1. ドライブ
		DOS と同じようなドライブの考え方があります。ドライブ名は英
		字の A～Z １文字です。ドライブは基本的にはマウントされた順
		番にふられます。df(1m) コマンドにより現在マウントされている
		ボリュームとそのドライブ名がわかります。

	2. unix 形式
		フルパス		<ドライブ>:[/ディレクトリ...]/ファイル
		ディレクトリの区切り	/
		カレントディレクトリ	.
		親ディレクトリ		..

	3. Mac 形式での指定
		フルパス		<ﾎﾞﾘｭｰﾑ名>:[ﾃﾞｨﾚｸﾄﾘ:...]最終パス
		カレント上のファイル	ﾌｧｲﾙ名
		カレント上のﾃﾞｨﾚｸﾄﾘ	:<ﾃﾞｨﾚｸﾄﾘ>
		親ディレクトリ		::最終パス

		この形式の指定をした場合には、ファイル展開はされません。
		詳細は、Inside Macintosh を見てください。

	注意:	次のようなものがあると Msh の解釈及び処理がおかしくなること
		があります。
			1. ".", ".." というファイル
			2. A～Z 一文字のボリューム
			3. "/" 文字を含むボリューム,ディレクトリ,ファイル

  [初期設定と終了]
	Msh は起動時にこのアプリケーションのあるディレクトリの _mshrc を実
	行します。
	終了時には、現在のところ特に処理は行いません。

  [コマンド入力について]
	プロンプトが表示されている場合に、コマンドを入力することが出来ます。
	なお、次のキーは特殊な意味を持っています。

	ESC		２回キー入力するとコマンド再入力
	Return, Enter	コマンドの実行
	Ctrl+H, Delete	カーソル前の文字消去
	Ctrl+G		カーソル文字の消去
	Ctrl+S, ←	カーソルの左移動
	Ctrl+D, →	カーソルの右移動
	Ctrl+U		コマンド再入力
	Ctrl+E, ↑	前のヒストリー表示
	Ctrl+X, ↓	次のヒストリー表示

  [コマンドの検索/実行]
	実行するコマンドの決定は次の順番で行われる
		1. 内部コマンド名かチェック
		2. 環境変数 path 上にアプリケーション/コントロールパネル/ディ
		   スクアクセサリ(DA) があるかチェック
		   フォルダー指定時はそのものがあるかチェック
			例: "a:/appl/STvi"

	path の設定例(_mshrc に通常は記述する)
		% set path=(a:/ｼｽﾃﾑﾌｫﾙﾀﾞ/コントロールパネル a:/Appl)

	アプリケーション時のオプション
		-n	ファイルがない場合にテキストファイルを新規作成
		-p	ドキュメントを実行する
		例: % yooedit -p *.txt	← YooEdit でファイルを印刷

	AppleScript もアプリケーション化させれば実行できます

  [コマンド実行中のキー]
	コマンドの実行中に有効なキーは次のものです。

	Ctrl+C		プログラムの強制停止(コンソールへの出力時のみで有効)
	Ctrl+S		コンソール表示の停止
			表示の再開は Ctrl+S or Ctrl+Q
	
	注意:	1. 現バージョンでは、表示時のみにキーをチェックしているため
		   ききが悪いことがあります。
		2. 現バージョンでは、Ctrl+S で表示を停止した場合にキーバッフ
		   ァをクリアしていないためコマンド入力状態になった場合に警
		   告音が鳴りますが気にしないで下さい。

  [字句の構造]
	'...'		変数,ファイルの置換は行われない
	"..."		ファイルの置換は行われない
	`コマンド..`	コマンドの標準出力をワードに区切ってコマンドラインに
			展開します("..." 内部の場合改行は新しいワードを作成
			します)
	(コマンド..)	コマンドをグループ化します
	\		後続する文字の特殊な意味をなくします
	#		入力が端末からでない場合(source など)後続する文字を
			無視する(コメント)

	例:	% man ".*copy.*"	← "copy" を含むマニュアルを表示
		% vi `grep -l abc *.c`	← "abc" を含むファイルを編集
		% (grep abc *.c ; grep xyz *.c) | sort
					← "abc","xyz" 検索結果をソート

	注意:	現バージョンでは \ による継続行はサポートされていません。

  [コマンド行の分析]
	;		複数コマンドの実行
	||		複数コマンドの実行(エラー時のみ処理続行)
	&&		複数コマンドの実行(正常終了時のみ処理続行)
	|, |&		パイプ

	注意:	現バージョンでは、 &&, || はサポートされていません。

  [I/O のリダイレクト]
	< <ファイル>	標準入力をリダイレクト
	> <ファイル>	標準出力をリダイレクト
	>> <ファイル>	標準出力をリダイレクト(現ファイルに追加)
	>& <ファイル>	標準出力,エラーをリダイレクト
	>>& <ファイル>	標準出力,エラーをリダイレクト(現ファイルに追加)
	|		標準出力をパイプ
	|&		標準出力,エラーをパイプ

  [ヒストリの置換]
      イベント指定
	!, !!		直前のコマンドを参照
	!<n>		コマンド行 <n> を参照
	!-<n>		<n> 行前のコマンドを参照
	!str		str で始まる最新のコマンドを参照
	!?str[?]	str を含む最新のコマンドを参照
	!{...}		ヒストリを参照するとき後続する文字と区切る
	^str^newstr[^]	直線のコマンドの str を newstr に置換する

      ワード指定
	イベント指定の後に ':' に続いて(^,$,*,-,% の場合省略可)指定すること
	によりワード範囲をしてすることができます
	#		(未サポート)
	0		最初の入力ワード(コマンド)
	n		n 番目の引数
	^		最初の引数(1 と同じ)
	$		最後のワード
	%		(未サポート)
	x-y		ワード範囲(-y は 0-y と同じ)
	*		全ての引数
	x*, x-		x-$ の省略形

      修飾子
	ワード指定に続いて ':' の後に次の１つ以上の修飾子を指定できます
	h,r,e		(未サポート)
	s/str/newstr[/]	str を newstr に置換(/ の代わりに任意の文字を指定可)
	t,&,g		(未サポート)
	p		コマンドを表示するが実行はしない
	q,x		(未サポート)

  [別名(エイリアス)]
	詳細は、alias(1m) を参照。

	備考:	0.5.1 より以下のような別名の置換結果に対する !* をサポート
		例:	% alias lsm 'ls -1 \!* | more'	← 登録
			% lsm *.c

  [変数の置換]
	$var, ${var}	変数とそのまま置換

	$var[index]
	${var[index]}	変数の指定したワード番号の範囲と置換
			ワードの指定方法(ワードは１が先頭)
				$var[*]		全てのワード
				$var[n]		n 番目のワードのみ
				$var[n-m]	n～m 番目のワード
				$var[n-]	n～最後のワード
				$var[-m]	1～m 番目のワード

	$#var, ${#var}	変数のワード数と置換

	$n, ${n}	$argv[n] と同じ
	$*		$argv[*] と同じ

	$?var
	${?var}		変数が設定されている場合は文字列 1、いない場合は 0

	$0, $?0, $<	(未サポート)

  [ファイル名の置換]
	下に示す文字のいずれかがコマンド内に現れた場合には、ディレクトリを
	調べアルファベット順にソートされたファイルまたはディレクトリに展開
	されます(DOS では一般にワイルドカード展開と呼ばれている)。ただし、
	引用符('...', "...")で囲まれていたり \ でエスケープされた場合はこの
	処理は行われない。

	*		(０個以上の)いずれかの文字に一致

	?		いずれかの１文字に一致

	[...]		囲まれた文字または文字範囲のいずれか１文字に一致
			例:	[abc]		a,b,c のいずれかの文字
				[a0-9]		a または数字の文字

	[^...]		囲まれた文字または文字範囲でないいずれか１文字に一致

	{str,str,...}	コンマで区切った各文字列に展開される(この展開結果は
			ソートされません)
			例:	% ls a*.{bak,old}

	~		変数 home の値に置換される(この指定はワードの先頭の
			場合のみ処理される)

	備考:	1. 半角の大文字/小文字は区別されませんが展開後は Finder で
		   見えるままとなります
		2. カタカナ及び全角文字は [] 指定以外正しく動くはずです

【ファイル】
	<Mshディレクトリ>/_mshrc	Msh 起動時に読み込まれるファイル

	<一時フォルダー>/__Msh_pipe*__	Msh パイプ処理用ファイル
	<一時フォルダー>/__Msh_tmp*__	Msh 一時ファイル

【シェル変数】
	echo		実行直前のコマンドを標準エラーに出力

	home		ユーザのホーム・ディレクトリです。ファイル名拡張の
			チルダ ('~') はこの値を参照します。

	noglob		ファイル名展開を禁止

	nonomatch	ファイル名展開のパターンが不一致でもエラーとしない

	prompt		プロンプトとして出す文字列
			(! 文字はのヒストリ番号に置換されます)

	verbose		ヒストリ置換後のコマンドを表示

【関連項目】
	alias(1m)	history(1m)	set(1m)
/***alias***/ unalias
ALIAS(1M)                     Mac-Shell Command                      ALIAS(1M)

【名前】
	alias   - 別名定義
	unalias - 別名削除

【形式】
	alias [name [def]]	別名定義設定または表示
	unalias pattern		別名定義削除

【解説】
	alias
		全てのエイリアスを表示します。

	alias name
		エイリアス name とその定義内容を表示します。

	alias name def
		def をエイリアス name に割り当てます。def はエスケープしたヒ
		ストリ置換のメタシンタックスを含むことのできる、ワードのリス
		トです。
		name に alias/unalias を指定することはできません。
		nameは、予約コマンドの扱いになるので、.(ピリオド)や / などを
		含めることはできません。

	unalias pattern
		pattern (ファイル名の展開方式と同じ)  に一致する全てのエイリ
		アスを削除する。
		全てのエイリアスを削除する場合は、unalias * とする。

	置き換えるコマンドにおける仮引数は、定義コマンド中に下で示すものを
	指定します。
		!*	全ての引き数

【バグ】
	1. unalias の name でワイルドカード指定をするとファイル展開が
		されてしまいます。
/***cd***/ chdir pwd
CD(1M)                        Mac-Shell Command                         CD(1M)

【名前】
	cd    - ワーキング・ディレクトリの変更
	chdir - ワーキング・ディレクトリの変更
	pwd   - ワーキング・ディレクトリの出力

【形式】
	cd    [dir]
	chdir [dir]
	pwd

【解説】
	cd    [dir]
	chdir [dir]
		シェルのワーキング・ディレクトリを、指定ディレクトリに変更し
		ます。引数を指定しなければ、ホーム・ディレクトリ(変数 homeの
		ディレクトリ)に変更します。

	pwd
		ワーキング・ディレクトリを出力します。

【シェル変数】
	home		ユーザのホーム・ディレクトリ

【関連項目】
	pushd(1m)
/***clear***/
CLEAR(1M)                     Mac-Shell Command                      CLEAR(1M)

【名前】
	clear - 端末画面のクリア

【形式】
	clear

【解説】
	Msh のコンソール・ウインドウをクリアします。
/***date***/
DATE(1M)                      Mac-Shell Command                       DATE(1M)

【名前】
	date - 日付時間の表示と設定

【形式】
	date [-j]		現在日時の表示
x	date yy/mm/dd [hh:mm]	日時の設定	** 未作成

【解説】
	date [-j]
		現在の日時を表示します。-j オプションを指定すると日本形式で
		表示します。
			% date
			Sun Jul 24 23:15:35 JST 1994
			% date -j
			94/07/24(日) 23:15:35

x	date yy/mm/dd [hh:mm]
x		日時の設定をします。

【バージョン】
	現バージョンでは日時の設定はできません
/***echo***/
ECHO(1M)                      Mac-Shell Command                       ECHO(1M)

【名前】
	echo - 引数の標準出力への出力

【形式】
	echo [-n] [argument...]

【オプション】
	-n	改行を行わない

【解説】
	argument を標準出力にスペース文字で区切って出力し改行します。
/***exit***/
EXIT(1M)                      Mac-Shell Command                       EXIT(1M)

【名前】
	exit - Msh の終了

【形式】
	exit

【解説】
	Msh を終了させます
/***help***/
HELP(1M)                      Mac-Shell Command                       HELP(1M)

【名前】
	help - Msh のコマンド一覧表示

【形式】
	help

【解説】
	使用できる Msh のコマンド一覧を表示します。
/***history***/
HISTORY(1M)                   Mac-Shell Command                    HISTORY(1M)

【名前】
	history - ヒストリ・リストの表示

【形式】
	history [-hr] [n]

【オプション】
x	-h	番号を付けずにヒストリ・リストを表示します。これは、source
		に -h オプションを使用して使う場合に適した出力をします。
x	-r	最新のものが最初にくるように出力順を逆にします。

【解説】
x	ヒストリ・リストを表示します。n を指定すると、最新の n 個のイベント
	だけを表示します。

【シェル変数】
	history		ヒストリ・リストに保存される行数
/***finder***/
FINDER(1M)                    Mac-Shell Command                     FINDER(1M)

【名前】
	finder - Finder の各種制御

【形式】
	finder	launch				Finder の起動
		open   <file>[...]		オープン(ダブルクリックと同じ)
		print  <file>[...]		Print
		info   <file>[...]		GetInfo(情報を見る)
		delete <file>[...]		ごみ箱に移動
		event  <Class> <ID> [file[...]]	AppleEvent の送信
		empty				ごみ箱を空にする
		reset				"再起動"
		shutdown			"システム終了"
		front				Finder を最前面に
		kill				Finder を終了

【解説】
	Finder の各種制御を行います

【関連項目】
	process(1m)
/***process***/
PROCESS(1M)                   Mac-Shell Command                    PROCESS(1M)

【名前】
	process - プロセスの各種制御

【形式】
	process launch    <Type> <Sign>			起動
	process open [-n] <Appl-Sign> <document>[...]	Open ドキュメント
	process print     <Appl-Sign> <document>[...]	Printドキュメント
	process quit      <Type> <Sign>			終了イベント送信
	process front     <Type> <Sign>			最前面に
	process event     <Type> <Sign> <Class> <ID>	イベントの送信

	-n	ファイルがない場合に新規作成

【解説】
	プロセス(アプリケーション等)の種々の制御を行うコマンドです。

	Type	プロセスタイプ(4文字)
		APPL	通常のアプリケーション
		FNDR	Finder
		そのた
	Sing	シグネチャーコード(4文字)
		現在起動中の物は ps(1m) コマンドで確認可能

【使用方法】
	プロセスの起動
		process launch APPL YoED	YooEdit の起動

	ドキュメントのオープン
		process open YoED *.h		全ヘッダーファイル編集

	ドキュメントの印刷
		process print YoED *.h		全ヘッダーファイル印刷

	プログラムを最前面に
		process front APPL YoED		YooEdit を最前面に
/***ps***/
PS(1M)                        Mac-Shell Command                         PS(1M)

【名前】
	ps - プロセスのステータスを表示

【形式】
	ps

【解説】
	現在動作中のプロセスを一覧表示します。
	表示例は次の通りです。

		% ps
		Machine: PowerBook 520/540
		OS Version: 7.1.1
		Task                       Type Crt   Top-mem  Size  Free
		--------------------------+----+----+--------+-----+-----
		Finder                     FNDR MACS   afc270   326   164
		ResEdit                    APPL RSED   6f9050   616   418
		STvi                       APPL TSvi   817b90   784   511
		Msh                        APPL TMsh   7935f0   528   234

		Size,Free の単位は KByte です。
/***pushd***/ popd dirs
PUSHD(1M)                     Mac-Shell Command                      PUSHD(1M)

【名前】
	pushd - ディレクトリプッシュ
	popd  - ディレクトリポップ
	dirs  - ディレクトリ・スタックの表示

【形式】
	pushd [+<n> | <dir>]
	popd  [+<n>]
	dirs  [-l|-L]

【解説】
	ディレクトリ・スタック操作は、次のコマンド操作で行ないます。

	pushd [+<n> | <dir>]
		ディレクトリをディレクトリ・スタックにプッシュします。パラメ
		ータを指定しないとスタックに積まれたディレクトリとカレントデ
		ィレクトリを交換します。

		+<n>	n 番目のエントリをスタックの一番上に回し、そのディレ
			クトリに移動します。
		dir	現在のワーキング・ディレクトリをスタックにプッシュし
			て、dir に移動します。

	popd [+<n>]
		ディレクトリ・スタックをポップして、一番上になったディレクト
		リに移動します。ディレクトリ・スタックの要素は、一番上を 0と
		して番号付けます。

		+<n>	スタック内の n 番目のエントリを破棄します。

	dirs [-l|-L]
		現在スタックに積まれているディレクトリの内容を表示します。

		-l	チルダ('~')で省略しないかたちで表示します
		-L	先頭に番号を付けて表示します(Msh 特有)

【シェル変数】
	home		ユーザのホーム・ディレクトリ

【関連項目】
	cd(1m)		pwd(1m)
/***set***/ unset
SET(1M)                       Mac-Shell Command                        SET(1M)

【名前】
	set   - シェル変数の設定
	unset - シェル変数の削除

【形式】
	set   [var[= value]]
	set   var[n] = word
	unset pattern

【解説】
	set
		全てのシェル変数の値を表示します。複数ワードの値はかっこで
		くくったリストとして表示されます。

	set   var[ = value]
		変数 var に、value の値を割り当てます。var 単独で指定すると
		変数 var に空の値を割り当てます。
		value は次のどちらかです。
			word	   １つのワード(または引用符で囲んだ文字列)
			(wordlist) かっこで囲んだワードをスペースで区切った
				   リスト

	set   var[n] = word
		変数 var の n 番目のワードを word に置き換えます。

	unset pattern
		pattern (ファイル名の展開方式と同じ)  に一致する全ての変数を
		削除します。

【バグ】
	・unset の name でワイルドカード指定するとファイル名に展開されてしま
	  います。

	・'set var[n]=word' は [] が通常のファイル展開されてしまいます。逃げ
	  として、引用符("") で var[n] を囲んでください。
	  (注意: この逃げは本来の csh ではおかしくなります)
/***source***/
SOURCE(1M)                    Mac-Shell Command                     SOURCE(1M)

【名前】
	source - ファイルからのコマンド読み込み

【形式】
	source [-h] file

【オプション】
	-h	コマンドの実行は行わず、ヒストリ・リストへの登録を行う。

【解説】
	ファイル file からコマンドを読み込み実行します。source コマンドは入
	れ子にすることができます。

【注意】
	入れ子が深すぎるとシェルのファイルオープン制限数を越えてしまうことが
	あります。
/***stty***/
STTY(1M)                      Mac-Shell Command                       STTY(1M)

【名前】
	stty - 端末オプションの設定/表示

【形式】
	stty

【解説】
	stty
		Msh コンソールのテキストサイズおよびモニターデバイスの解像度,
		カラーモード等を表示します。

【使用例】
	% stty
	size = 80 x 25			← コンソールの文字数
	Monitor  640 x 480 (4 mono)	← モニターの解像度(表示モード)

【バージョン】
	本バージョンでは、設定はできません。
/***cat***/
CAT(1M)                       Mac-Shell Command                        CAT(1M)

【名前】
	cat - ファイルの連結と出力

【形式】
	cat [-vnN] [file...]

【オプション】
	-v	コントロール文字を '^A'(CTRL+A) のように出力する。タブ、改
		行(LF)、キャリッジリターン(CR)はそのまま出力される。
	-n	行の先頭に行番号を付加する。行番号は各ファイルの先頭で 1に
		設定される。
	-N	行の先頭に行番号を付加する。行番号は複数ファイルを出力する
		場合でもファイルを通じて増え続ける。

【解説】
	cat は、指定した各 file を順次読み取り、標準出力に書き出します。
	file が与えられないか '-' がファイル名として与えられた場合には、標
	準入力から読み込む。
/***cp***/
CP(1M)                        Mac-Shell Command                         CP(1M)

【名前】
	cp - ファイルのコピー

【形式】
	cp [-rivbu] file1 file2
	cp [-rivbu] file1 ... filen directory

【オプション】
	-r	ディレクトリ下の全ファイルをコピーする
	-i	対話モード（コピー先ファイルがすでに存在する場合にはコピー
		の前に確認する）
	-v	どのファイルがどこにコピーされているのかを逐一表示する
	-b	通常ファイルのコピーで、かつコピー先が既存のファイルであれば、
		それを.bakという拡張子で保存してからコピーを行う。この場合、
		コピー先の元のファイルがリードオンリーであっても、以上の作業
		が行われるので注意のこと。
	-u	通常ファイルのコピーで、かつコピー先がコピー元より新しいか同
		時刻の既存ファイルであれば、コピーを行わない。なお、コピーを
		行わなかった旨のメッセージは表示されないので注意。

【解説】
	cp は UNIX の同名命令と同じ働きを持った ファイルコピープログラムで
	ある。cp を使うと一つのファイルを別のファイルにコピーする(1)、ある
	いは複数のファイルを別のディレクトリに同じ名前でコピーする(2) こと
	ができる。(1) 形式では file2  はディレクトリであってはならず、また
	(2) 形式では directory  はすでに存在するディレクトリでなければなら
	ない。

	'-r' オプションが設定されて、 かつコピー元ファイルがディレクトリで
	あった場合には、cp はディレクトリ下の全ファイルを、 ディレクトリ構
	造を保存してコピーする。
/***df***/
DF(1M)                        Mac-Shell Command                         DF(1M)

【名前】
	df - ディスクフリーサイズの出力

【形式】
	df  [-hl] [drive...]

【オプション】
	-h	バージョン等の出力
	-l	詳細情報の出力
		ファイルシステムの種別(HFS/MFS/その他), 媒体ロック, 総ファ
		イル数, 総フォルダー数, アロケーションブロックのサイズ等を
		出力します

【解説】
	コマンド df は、ドライブごとに使用されているディスク容量、使用済の
	スペースと未使用容量、そしてファイルシステムの全容量に対する使用済
	スペース容量の割り合いを表示します。引数がなければ、 df は全ドライ
	ブについて表示します。

	% df
	Filesystem            kbytes    used   avail capacity  Drive
	a: TomPB              157940  114787   43152    72%    SCSI #0
	b: RAM ディスク         1091      66    1025     6%    RAM-Disk
	c: DOS #1               1440     344    1096    24%    FD #0, PC-Disk

	ドライブ,ボリューム名 全容量  使用済  空容量  使用率   デバイス

【関連項目】
	du(1m)
/***diff***/
DIFF(1M)                      Mac-Shell Command                       DIFF(1M)

【名前】
	diff - テキスト・ファイル間の行の内容の相違の表示

【形式】
	diff [ -bitw ] [ -c [ # ] | -e | -f | -n | -h  ]   filename1
	filename2
	diff [ -bitw ] [ -Dstring ]  filename1 filename2
	diff [ -bitw ] [ -c [ # ] | -e | -f | -n | -h ] [ -l ] [ -r ]
	[ -s ] [ -Sname ]  directory1 directory2

【解説】
	diff はファイルの内容を比較します。規定のファイル上で実行 して、デ
	ィレクトリの比較中において異なっていると判断された２つのテキスト・
	ファイルを比較した場合（ディレクトリの比較に関しては後述の注意を参
	照）、 diff は両ファイル間において内容の異なっている行を知ら せ ま
	す。例外的な場合を除いて、 diff はごく些細な違いでも発見します。
	filename1 と filename2 のどちらもディレクトリでなければ、 いずれか
	一方に `-' を指定することもできます。この場合は標準入力を使用 しま
	す。filename1 がディレクトリであれば、filename2 と同じファイル名を
	もつそのディレクトリ内のファイルを filename1 として使用します （逆
	も同様）。

	出力書式にはいくつかのオプションがあります。省略時の出力書式はこれ
	らの書式行を含んでいます。

		n1 a n3,n4
		n1,n2 d n3
		n1,n2 c n3,n4

	これらの行は filename1 を filename2 に変換する ed(1) コマンド に似
	ています。文字の後の数字は filename2 に関連をもっています。事実、
	a と d を入れ替えて逆に読めば、filename2 を filename1 に変換する方
	法を確認できます。 ed(1) の場合と同様に、 n1 = n2 とか n3 = n4  な
	どの対は単独の数に省略されています。

	これらの行の次には、`<' で示す最初のファイルの相違ある行が示され、
	次に `>' で示す２番目のファイルの相違ある行が示されます。

	両方の引数がディレクトリであれば、 diff はディレクトリ内容を名前順
	にソートし、次に、前述のように違いのあるテキスト・ファイル上で規定
	のファイル diff プログラムを実行します。違いのある バ イナリ・ファ
	イル、共通のサブディレクトリ、および１つのディレクトリにしか現れな
	いファイルの一覧を出力します。

【オプション】
	-b	後続のブランク（空白および改行文字）を無視し、その他のブラ
		ンク文字列をすべて等しいものとみなします。

	-i	大文字と小文字を区別しません。たとえば `A' は `a' と同じと
		みなします。

	-t	出力行でタブ文字を拡張します。通常の出力または -c 出力は、
		各行の先頭に文字を追加するため、元のソース行のインデントが
		混乱し、出力リストの解釈をむずかしくする恐れがあります。こ
		のオプションは読み易さを保つために元のソースのインデントを
		確保するものです。

	-w	ブランク（スペースおよびタブ文字）をすべて無視します。たと
		えば、`if ( a == b )' と `if(a==b)' は同等です。次の ４ つ
		は、相互に排他的なオプションです。

	-c[#]
		行の相違を示すリストを、いくつかの行の内容とともに出力しま
		す。省略時の行数は３行ですが、例えば -c10 によって10  行に
		変更できます。 -c を使用すると、出力書式が少し変化します。
		つまり、出力は該当するファイルの識別とその作成日で始まり、
		各変更点は 12 個の * を含む行で区切られます。 filename1 か
		ら削除された行には `- '; また filename2 に追加された行には
		`+ ' の記号がつきます。１つのファイルから他のファイルへ 行
		を交換した場合には、両方のファイルに `! ' が付けられます。

		ここで指定した数以内の行数の、両ファイル中で検出された変更
		個所は、まとめて出力されます（これは従来の `diff -c'  を変
		更したもので、結果の出力ははるかに解釈し易くなりました）。

	-e	エディタ ed に対して、a, c, d コマンドのスクリプトを生成し
		ます。これは filename1 から filename2 を再作成します。

		-e に関連して、次のシェル・プログラムは複数の バージョンの
		フ ァ イ ル を維持するのに役立ちます。元のファイル（$1）と
		diff が生成した一連のバージョン間の ed スクリプト($2,$3,..)
		だけが必要です。「最新バージョン」は標準出力に現れます。

			(shift; cat $*; echo '1,$p') | ed - $1

		-e でディレクトリを比較するときには出力に特別な コマンドル
		を directory1 の状態から directory2 の状態に変換する sh ス
		クリプトが結果として得られます。

	-f	-e と同様のスクリプトを生成しますが、順序が逆なので  ed で
		は利用できません。

	-n	-e と同様のスクリプトを生成しますが、順序が逆であり、 各挿
		入または削除コマンドで変更した行数をカウントします。

	-h	高速ですが、精度が高いとはいえません。変更の範囲が狭く、は
		っきりと分かれている場合にのみ有効です。いかなる長さのファ
		イルにでも使用できます。

	diff の２番目の書式のオプションは次の通りです。

	-Dstring
		filename1 と filename2 をマージし、標準出力に書き込みます。
		C プリプロセッサによる制御を含んでいますから、 string を定
		義せずに結果をコンパイルすることは、filename1 をコンパイル
		す る こ と と 等 し く な ります。他方、string を定義する
		と、 filename2 が生成されます。

	ディレクトリ比較時のオプションは次の通りです。

	-l	長い出力書式。各テキスト・ファイル diff を pr(1V) に渡し、
		ページ付けを行います。テキスト・ファイルの違いをすべて報告
		してから、その他の相違が記録され要約されます。

	-r	共通のサブディレクトリが検出されると、 diff を再帰的に適用
		します。

	-s	同じファイルを報告します。異なるファイルは報告しません。

	-Sname
		ディレクトリ diff の処理をファイル name から開始します。

【ファイル】
	/tmp/d?????

【診断】
	終了ステータスは、違いがない場合は 0、違いが数カ所ある時は 1、問題
	がありすぎる場合は 2 となります。

	Missing newline at end of fileX
		ファイル X の最終行に復帰改行がないことを示します。 出力が
		行が同じであることを示しているようにみえても、実際には異な
		っていれば、それらにフラグをたてて出力します。

【使用上の留意点】
	-e か -f オプションを指定して生成する編集用スクリプトは、`.'  で構
	成する行の作成については意識しません。

	-b, -w, -i オプションを指定してディレクトリを比較する場合、diff は
	まず（cmp(1) の場合と同様に）ファイルを比較し、等しくなければ 規定
	の diff アルゴリズムを実行します。違いが単にブランク文字列の 遅 れ
	や、大文字と小文字の違いだけで、ファイルが同じであることが分かった
	場合には、出力が一部正しくないことがあります。

	-D オプションはソース・ファイル中にあるプリプロセッサの既存の 制御
	を無視し、範囲の重複する #ifdefs' を生成できます。出力は手作業でチ
	ェックするか、あるいは `cc -E' （cc(1V) 参照）で実行して、元のソー
	ス・ファイルと diff で違いを比較しなければなりません。違いが明らか
	になった場合には、コンパイルする前に修正しておかなければなりません。

【その他】
	GNU 版の diff コマンドです。日本語対応はされていません。
/***du***/
DU(1M)                        Mac-Shell Command                         DU(1M)

【名前】
	du - ディレクトリまたはファイルのディスク使用量を調べる

【形式】
	du  [-asl] [{file|dir}...]

【オプション】
	-a	一般ファイルに対しての情報も出力
	-s	ブロック数の総計だけを出力
	-l	サブディレクトリを除いたブロック数,バイト数を出力
		（UNIX にはないオプション）

	オプションがない場合、各ディレクトリに対しての情報のみが出力されま
	す。

【解説】
	du は、ファイル，またはディレクトリを再帰的に降下しながらその 下の
	すべてのディレクトリに含まれているファイルのディスク上に占めるキロ
	バイト数を報告します。もし、ファイル名が指定されなければ "."（カレ
	ントディレクトリ）がその対象となります。

【使用例】
	ディレクトリに対して du を使った例を示します。なお、ディレクトリの
	ブロックの総計は、表示の中の最後の項目です。
		% du
		5	./memos
		44	./tech/lpr
		217	./tech/new
		401	./tech
		80	./letters
		503	.

	-l オプションを指定した例を示します。フロッピーのコピーを行った 場
	合などに、総バイト数を比較すれば内容が同一か大体のチェックが行えま
	す。
		% du -l /usr/tc
		  usage  in dir   in bytes  res bytes Directory
		    368     368    151,652          0 /usr/tc/graphic
		     24      24      1,638          0 /usr/tc/include/sys
		    280     256     90,257          0 /usr/tc/include
		    648     648    603,691          0 /usr/tc/lib
		   2752    1456  1,388,515          0 /usr/tc
		   2752    2752  2,235,753          0 total

		usage		総 KB
		in dir	 	dir内 KB
		in bytes	データ  フォークの総バイト数
		res bytes	リソースフォークの総バイト数
		Directory	ディレクトリ名

【関連項目】
	df(1m)

【注意】
	現在サブディレクトリ自体のファイルサイズは加算されません。
	-a を指定しないと、ディレクトリでないファイルの引数は無視されます。
/***file***/
FILE(1M)                      Mac-Shell Command                       FILE(1M)

【名前】
	file - ファイル内容を検査しファイルタイプを報告する

【形式】
	file filename[...]

【オプション】
	なし

【解説】
	file は、指定されたファイルについて各種のテストを行い、その ファイ
	ルタイプを判定します。なお、判定はファイル内容をもとに行うためファ
	イル拡張子と異なるファイルタイプを報告する事がしばしばあります。

	現在判定できるファイル・タイプは次の通りです。

	    テキスト・ファイル
		C program	Ｃ言語プログラムソース
		ASM program	アセンブリプログラムソース
		batch text	バッチファイル
		日本語 text	日本語を含んだテキストファイル
		english text	英文文書ファイル
		ascii text	その他のテキストファイル

	    バイナリー・ファイル
		EXE		実行形式ファイル（EXE 形式）
		COM		実行形式ファイル（COM 形式）
		COM (Turbo-C)	実行形式ファイル（COM 形式，Turbo-C で作成）
		COM (MS-C)	実行形式ファイル（COM 形式，MS-C で作成）
		object file, <source-file> <コンパイラ，アセンブラ名>
				オブジェクトファイル
		library		ライブラリファイル
		LHA archive (-lhx-)
				LHA,LHARC で作成されたアーカイブファイル
		data		その他のファイル（判定できなかった）

	    その他
		directory	サブディレクトリ
		empty		ファイルサイズが 0 byte のファイル
		character special file
				キャラクターデバイス（CON,CLK 等）
		cannot open	ファイルがオープンできなかった
		cannot read	ファイル内容を読み込めなかった

【使用例】
	% file *
	df.com:		COM (Turbo-C)
	du.c:		C program
	du.exe:		EXE
	du.obj:		object du.c, MS C
	file.c:		C program
	file.exe:	EXE
	file.obj:	object file.c, TC86 Borland Turbo C++ 1.01
	makefile:	ascii text
	old:		directory
	x.bat:		english text
	改良:		日本語 text

【注意】
	file はしばしば嘘をつきます。

【その他】
	現在のバージョンは、初期のものであるためあまり利口ではありません。
	ファイルタイプの追加，判定方法の改善をしてほしいようでしたら、どし
	どし言って下さい。
/***grep***/
GREP(1M)                      Mac-Shell Command                       GREP(1M)

【名前】
	grep - ファイルの文字列または正規表現のサーチ（GNU 版）

【形式】
	grep [ -CVbchilnsvwx ] [-<num>]
			{-f expfile | [-e] expression} [filename...]

【解説】
	grep は、入力ファイル（省略時には標準入力）をパターン検索して、 そ
	のパターンを含む行をすべて標準出力に出力します。 grep	が照合に使
	用するパターンは、 ed(1) で使用する形式の限定正規表現です。

	expression で '$*[^|()\' などの文字を使用する際には注意が必要です。
	これらの文字はシェルにとって特別な意味があるからです。  expression
	全体を単一引用符 '...' で囲むのが最も安全です。
	（MS-DOS の場合には、'"' でくくると良いでしょう）

	grep ユーティリティを複数の入力ファイルに適用する場合には、出力 さ
	れる各行の先頭にファイル名が付けられます。１つのファイルを処理する
	ときはファイル名は表示されません。したがって、ファイル名を表示した
	い場合は、２番目のファイルとして NUL を指定してください。

【オプション】
	-C	一致した行の前後２行をブロックとして表示します
	-V	バージョン番号を表示します
	-b	各行の先頭にその行のブロック番号を付けます。このオプション
		は、文脈によりブロック番号を見つけだす場合に便利です
	-c	一致したパターンを含む行そのものではなく、その行数だけを出
		力します
	-h	ファイル名を表示しません
	-i	比較時に大文字と小文字を区別しません。すなわち、大文字と小
		文字は同じと解釈されます
	-l	一致した行があるファイルのファイル名だけを出力します
	-n	各行の先頭にファイル内の相対行番号を付けます
	-s	エラー・メッセージだけを表示します。エラー状態を調べるのに
		便利です
	-v	一致しない行だけをサーチし、表示します
	-w	\< と \> で囲んだのと同じように式をワードとしてサーチする
	-x	完全に一致した行だけを表示します
	-e expression
		単に expression のみを指定したときと同じですが、expression
		が `-' で始まる場合に使用します
	-f expfile
		expfile から正規表現または復帰改行で区切った文字列のリスト
		を取り出します
	-<num>	一致した行の前後 <num> 行を表示させます

【正規表現】
	次の「１文字」の正規表現は、１文字と一致します。

	c	普通の文字（下記の特殊文字以外）はそれ自身と一致する１文字
		の正規表現です。

	\c	バックスラッシュの後に特殊文字を続けた場合、その特殊文字と
		一致します。特殊文字には次のものがあります。

		+	`.', `*', `[' と `\'（ピリオド、アスタリスク、左か
			ぎかっこ、バックスラッシュ）は、かぎかっこ ([]) で
			囲まないかぎり、特殊な意味を持ちます。

		+	`^' （カレットまたはサーカムフレックス）は、正規表
			現全体の先頭にある場合、または左かぎかっこの直後に
			ある場合、特殊な意味を持ちます。

		+	$ （通貨記号）は、正規表現全体の終わりにある場合、
			特殊な意味を持ちます。

	`<'、 `>'、 `('、 `)'、 `{'、または `}' がバックスラッシュの後に現
	われたとき、下記のように正規表現の演算子を示します。

	.	ピリオドは、改行以外の任意の文字と一致します。

	[string]
		かぎかっこで囲んだ空でない文字列は、文字列のいずれかの文字
		と一致します。ただし、文字列の最初の文字が `^'（サーカムフ
		レックスまたはカレット）の場合、正規表現は、改行および文字
		列内の他の文字を除くすべての文字と一致します。これ以外の位
		置にある `^' は、普通の文字として解釈されます。マ イ ナ ス
		（`-'）符号を使用して、一致させる連続する ASCII 文字の範囲
		を示すことができます。
		たとえば範囲 [0-9] は文字列 [0123456789] と同じです。  `-'
		は、文字列の先頭（または先頭の `^' の後）か、終わりにあ る
		場合は普通の文字として解釈されます。右側のかぎかっこ `]'は
		、かぎかっこで囲まれた文字列の最初の文字である場合（先頭の
		`^' の後）、囲まれた文字列は終了しません。たとえば、[]a-f]
		は `]' か、または文字 a から f と一致します。このような 文
		字列では、 `.', `*', `[', と `\'  は普通の文字として解釈さ
		れます。

	次の規則により、正規表現を作成することができます。

	*	１文字の正規表現とそれに続くアスタリスク `*' は、 0 個以上
		の１文字正規表現と一致します。一致する対象が複数個ある場合
		は、最も多くの文字数が一致する正規表現 (それも複数個あれば
		左端に近いもの)と一致します。

	\(と\)
		\( と \)  に囲まれた正規表現は、正規表現それ自体と一致する
		ものと一致します。

	\n	式 \n は、同じ正規表現の \( と \) に囲まれた正規表現と一致
		する同じ文字列と一致します。 n  は、数字とし、指定されたサ
		ブエクスプレッションは、左から数えて n 番目の  \( となりま
		す。たとえば式 ^\(.*\)\1$ は、同じ２つの文字列からなる行と
		一致します。

  ［連結］
	正規表現を連結したものは、テキスト文字列を連結したものと一致し、そ
	れぞれがサーチ・パターンの連続する正規表現と一致します。

	\<	正規表現の中のシーケンス \< は、その直後の１文字の正規表現
		を「ワード」の始めの部分、すなわち行の始めか,文字,数字, ま
		たは下線の前、およびこれら以外の文字の後の部分のみと一致さ
		せます。

	\>	正規表現の中のシーケンス \> は、その直後の１文字の正規表現
		を「ワード」の終わりの部分、すなわち行の終わりか,文字,数字
		または下線以外の文字の前の部分のみと一致させます。

	\{m\}
	\{m,\}
	\{m,n\}
		１文字の正規表現とそれに続く \{m\}、\{m,\}、または \{m,n\}
		は、指定された回数分、その正規表現と一致します。 m と n の
		値は 256 未満の負でない整数でなければなりません。 \{m\} は
		m 個の正規表現と一致します。 \{m,\}は m 個以上の正規表現と
		一致します。 \{m,n\} は、m 個から n 個の正規表現と一致しま
		す。第 2 および第 3 の指定方法の場合、許容範囲内でできるだ
		け多くの回数分、その正規表現と一致します。

	^	正規表現の先頭のカレットまたはサーカムフレックス  (^) は、
		正規表現を行の最初の部分とのみ一致させます。

	$	通貨記号 ($)  は、正規表現全体の終わりにある場合、正規表現
		を行の最後の部分とのみ一致させます。

	構造

		example% ^entire $

	は、正規表現全体を行全体と一致させます。

	egrep は、 \(, \), \n, \<, \>, \{,と \}、を除いて grepと同じ種類の
	正規表現を使用できます。 egrep では、さらに次のものが使用できます。

		*	正規表現（１文字だけでなく）とそれに続くアスタリス
			ク `*' は、 0 個以上の１文字正規表現と一致します。
			一致する対象が複数個ある場合は、できるだけ左端に近
			い最長の正規表現と一致します。

		+	正規表現とそれに続く正符号 `+' は、 1 個以上の１文
			字正規表現と一致します。一致する対象が複数個ある場
			合は、できるだけ左端に近い最長の正規表現と一致しま
			す。

		?	正規表現とそれに続く疑問符 `?' は、 0 個以上１文字
			正規表現と一致します。一致する対象が複数個ある場合
			は、できるだけ左端に近い最長の正規表現と一致します。

		|	代替。 2 つの正規表現を `|' または改行で区切った場
			合は、いずれかの正規表現に一致するものと一致します。

		()	かっこで囲んだ正規表現はその正規表現に一致するもの
			と一致します。

	演算子の優先順位は、高いものから、 `[ ]' （文字分類）、`*' `+' `?'
	（クロージャ）、 `|' （代替）および改行となっています。

【使用例】
	1 つのファイルを処理するときにだけファイル名を表示するには、nulを
	2 番目のファイルとして使用します。

【関連項目】
	vi(1m)		regexp(7)

【使用上の留意点】
	1 行の長さは最大 1024 文字までとします。それより長い行は切り捨てら
	れます。

【診断】
	一致するものがあった場合の終了ステータスは 0、一致するものがなかっ
	た場合には 1、構文エラーまたはアクセス不能エラーがあった場合には 2
	となります。

【その他】
	GNU 版の grep コマンドです。
/***head***/
HEAD(1M)                      Mac-Shell Command                       HEAD(1M)

【名前】
	head - ファイルの先頭部分の出力

【形式】
	head [-<n>] [filename[...]]

【オプション】
	-<n>	出力行数の指定(省略時＝10行)

【解説】
	指定した各ファイルの先頭部分を指定行だけ出力します。ファイルが２つ以
	上指定された場合にはファイル名も出力されます。

	% head -5 file1.c file2.c
	==> file1.c <==
	/*
	 *	FILE1.C
	 */
	#include <stdio.h>
	#include <dir.h>

	==> file2.c <==
	/*
	 *	FILE2.C
	 */

	#include <stdio.h>
	%

【関連項目】
	cat(1m)		tail(1m)
/***look***/
LOOK(1M)                      Mac-Shell Command                       LOOK(1M)

【名前】
	look - 英単語辞書の検索

【形式】
	look string [...]	英和辞書を引く（string で始まる英単語の表示）
	look <日本語> [...]	和英字書を引く（string の意味を含む単語の表示）

【解説】
	英単語辞書から string で始まる英単語全てを表示します。また、string
	に日本語を指定すると和英検索となり string で指定された日本語の意味
	を持つ単語を全て表示します。

【ファイル】
	*/english.dic		英単語辞書
				(ディレクトリは Msh コマンドのある所)

【関連項目】
	looktool(1m)

【その他】
	現在のこのコマンドは英単語辞書の検索のために作られたもので、 unix
	の同名のコマンドとは仕様が異なっています。

	look は Y.Tuda 作成のコマンドです。
/***ls***/
LS(1M)                        Mac-Shell Command                         LS(1M)

【名前】
	ls - ディレクトリの内容の表示

【形式】
	ls [-RadCxLlrtFsX1] [FILES.....]

【オプション】
	-1	ファイル名だけを一行一ファイル形式で表示する。標準出力がブ
		ロックデバイス(ディスク)に接続されている時のデフォルト出力
		形式である。
	-C	ファイル名だけを縦方向に整列して表示する。標準出力が非ブロ
		ッデバイス(コンソールなど)に接続されている時のデフォルト出
		力形式である。
	-F	実行可能ファイルの名前の後に'*'を、ディレクトリの後ろに は
		'/'、エイリアスの後ろには '@' を付加して表示する。
	-R	ディレクトリの下のファイル全てを再帰的に表示する。
	-S	ソートしない。ファイルはディレクトリに格納されている順番で
		出力される。
	-X	ファイルをその大きさでソートする。
	-a	隠しファイルや '.', '..' で始まるファイル名も表示する。
	-d	ファイルがディレクトリであった場合には、その中に含まれるフ
		ァイルを表示せずディレクトリの名前そのものを表示する。
	-l	ファイルについての詳細な情報を表示する - ファイル属性、 更
		新日時、大きさ、ファイル名。一行一ファイル形式で出力される。
	-L	機種依存情報の出力する。(UNIX にはないオプション)
	-r	ソートの順番を逆にする。
	-s	ファイルの大きさをファイル名の前に付加して表示する。大きさ
		の単位は1024バイト
	-t	ファイルをその更新日時でソートする。最近に更新されたファイ
		ルが先頭に表示される。
	-x	'-C' に似ているが横方向にソートする。

【解説】
	ls は FILES に関する様々な情報を様々な形式で表示する。FILES が指定
	されなかった場合には ls は現ディレクトリの内容を、ファイル名の順番
	にソートして表示する。
	なお、ls の表示するファイルサイズは Msh の場合にはデータフォークの
	サイズのみです。(-L オプションでリソースフォークも表示される)

	-l オプションが指定された時に出力されるファイルの属性情報は7文字か
	らなる。各文字は次のような意味を持っている。

	    d : ファイルはディレクトリである
	    a : アーカイブビットが立っている(アーカイブビットとは何?)
	    h : 隠しファイルである
	    r : 読み込み可能
	    w : 書き込み可能
	    x : 実行可能(ディレクトリの場合にも属性は立っている。これはUNIX
		から来た習慣である)
	    - : 対応する属性を持っていないことを示す。

	-L オプションが指定された場合には、次の機種依存情報を表示する。
	    Macintosh(Msh) の場合
		リソースフォークのバイト数(データフォークサイズの次)
		ファイルタイプ
		クリエータータイプ
		ファイル属性	FInfo の fdFlags
		ディレクトリの場合 ディレクトリID

	     例:
	      % ls -Ld applMsh.c cmd

			リソースフォークバイト数       Type Creat フラグ
				 ↓			↓   ↓   ↓
	      ----rw-    5238    414 Aug  9 1994 03:40 TEXT TSvi 0100 applMsh.c
	      d---rwx       0      0 Aug 13 1994 00:17      3374 0100 cmd/
							     ↑
							ディレクトリID
/***mkdir***/ rmdir
MKDIR(1M)                     Mac-Shell Command                      MKDIR(1M)

【名前】
	mkdir - ディレクトリ作成
	rmdir - ディレクトリ消去

【形式】
	mkdir [-p] <directory> [...]	ディレクトリ作成
	rmdir <directory> [...]		ディレクトリ消去

【オプション】
	-p	親ディレクトリがない場合に必要に応じて作成する

【解説】
	ディレクトリの作成及び削除を行います。
/***mv***/
MV(1M)                        Mac-Shell Command                         MV(1M)

【名前】
	mv - ファイルの移動

【形式】
	mv [-ivfbu] file1 file2
	mv [-ivfbu] file1 ... filen directory

【オプション】
	-i	対話モード（移動先ファイルが存在する場合には確認する）
	-v	どのファイルをどこに移動しているのかを逐一表示する
	-f	書き込み不可ファイルは属性を変えて強制的に移動する
	-b	通常ファイルのコピーで、かつ移動先ファイルが存在する時には名
		前を*.bakに変えて保存する。たとえば
			mv -b foo bar.c
		で、bar.cが存在する時にはbar.cの内容をbar.bakに保存する。
	-u	通常ファイルのコピーで、かつ移動先ファイルが移動元ファイルよ
		り新しいか同時刻の既存ファイルであれば、移動を行わない。なお、
		移動を行わなかった旨のメッセージは表示されないので注意。

【解説】
	mv はファイルを移動します。

	1. file1 を file2 に移動する。file2 はディレクトリであってはならな
	   い
	2. 複数のファイル file1...filen を directory に同じ名前で移動する。
	   directory は存在するディレクトリでなければならない。

	移動先は違うドライブであっても良い。その場合には実際にはファイルを
	コピーした後、元のファイルを削除する。また、移動対象ファイルがディ
	レクトリであった場合には、ディレクトリ下のファイル構造を保存したま
	ま全体を移動する。たとえば,

		usr/local/foo/a
		usr/local/foo/a/b
		usr/local/foo/c

	というようにfoo以下にファイルが配置されていたとする。ここで
		mv /usr/local/foo /etc/
	を実行すると、結果次のようになる（ただし/etcディレクトリはすでに存
	在していたとする）。

		etc/foo/a
		etc/foo/a/b
		etc/foo/c

【注意】
	ファイルを同じファイルに移動すること、たとえば

		mv foo foo

	は避けた方がよい。大低の場合、 mv はこのようなケースを検出してエラ
	ーを出すが、もしかするとチェックにもれることもないとは言えない。少
	くとも作者は保証できない。最悪の場合にはファイルの内容が失われる。

【関連項目】
	cp(1m)
/***man***/
MAN(1M)                       Mac-Shell Command                        MAN(1M)

【名前】
	man - オンライン・マニュアルの表示

【形式】
	man [options] [section] title
	man [options] -k [section] [keyword [...]]

【オプション】
	-I            : 大文字小文字を区別する
	-k keyword... : キーワードによりタイトルを捜す
	-M<man-dir>   : マニュアルファイルのディレクトリを指定
	-v            : 使用方法の表示

【解説】
	man はマニュアルからの情報を表示します。 man は title で選択したマ
	ン・ページの全内容を表示するか、または keyword (-k) によって選択す
	る 1 行の要約を表示できます。

	section が与えられた場合、これはコマンド行でこれに続く title  に適
	用されます。man はマニュアルの指定された項で title を探します。
	section	は数字（この後にマン・ページの種類を示す1文字が続く）です。
	section	を省略すると、全ての項目を探し、順番にマニュアルを出力しま
	す。もし、１つも見つからなければ、エラー・メッセージを出力します。

    [メタキャラクタ（新機能）]
	うろ覚えの関数なども、簡単に引けるように title と keyword に  Unix
	風のメタキャラクタ（正規表現とも言う）を使用できます。代表的な物を
	下に説明します。なお、詳細は regexp(7) を参照して下さい。

		.	任意の一文字
		*	直前の文字（メタキャラクタも）の０回以上の繰り返し
		[...]	括弧内のどれか１文字（[a-z] 全ての英小文字）
		[^...]	括弧内の文字に該当しない１文字

	使用例
		man  .*copy.*		"copy" を含むタイトル全て
		man  [0-9].*		先頭が数字のタイトル全て

    [マニュアル表示時のキー]
		^C, q, Q	終了する
		j, J, Return	１行前進(↓ キーでも可)
		k, K		１行後退(↑ キーでも可)
		SPACE, f, F, ^F	１頁前進(ROLL-UP キーでも可)
		b, B, ^B	１頁後退(ROLL-DOWN キーでも可)
		d, D, ^D	半頁前進
		u, U, ^U	半頁後退
		g		先頭にジャンプ
		G, $		最後にジャンプ
		^L		再表示
		x		次のマン・ページに移る（なければ終了）
		/, ?		文字列検索(正規表現は不可)
		n, N		前方/後方検索(検索は循環します)

		:<コマンド>	コマンドラインモード
			1, $	先頭/最後にジャンプ
			n	次のマン・ページへ
			q, q!	終了
			!<cmd>	外部コマンドの実行

    [キーワード検索]
	一覧ファイル（*/whatis）を検索しキーワードで指定されたタイトルを探
	し出します。

	キーワードで指定されたもの全てにマッチするタイトルを探し表示します。
	検索の方法は、キーワードで指定された文字列があるかどうか調べている
	だけです。
	なお、検索は同じ意味の言葉でもいろいろの表現（例：削除→消去，消す）
	がされているため通常の文字列検索ではうまくゆきません。そこで、 man
	では別名定義ファイル（*/manfind.ail） を使いキーワードで指定された
	語と同じ意味を持つ文字列がある場合には検索が成功されたとみなすよう
	にしています。このファイルに、別名を追加していく事により検索が容易
	になっていきます。

	[manfind.ail の一部]
		file	ファイル
		del	デリート	削除	消す
		output	アウトプット	出力
		put	プット		出力
		read	リード		読	入力

	[実行例]
		% man -k file del
		del(1)		ファイルの削除  （COMMAND.COM 内部コマンド）
		rm(1m)		ファイルを削除する
		cut(1m)		ファイルの各行から特定のフィールドを削除
		remove(3)	ファイルの削除
		rmdir(3)	ファイルディレクトリの削除
		unlink(3)	ファイルの削除

【セクション】
	用意されているマニュアルのセクションは、次のようになっています。

		１	コマンド
		２	システム・コール(Macの場合 Toolbox)
		３	Ｃランタイム・ライブラリ	（現在なし）
		４	特殊ファイル			（現在なし）
		５	ファイル・フォーマット
		６	ゲーム／デモ			（現在なし）
		７	色々な情報
		８，９	未使用

	現在あるマニュアルのセクションはこのようになっています。

		1m	Msh コマンド
		2*	Toolbox リファレンス
		3	Ｃライブラリ
		5	ファイルフォーマット
		5m	Msh コマンドのファイルフォーマット
		7	色々な情報
		7c	Ｃ言語の色々な情報

【ファイル】
	*/man?x.hlp	マニュアル内容
	*/man.idx	インデックスファイル(manmnt(1m) でメンテナンス)
	*/whatis	一覧ファイル
	*/manfind.ail	キーワード別名定義ファイル

	ディレクトリ	Msh のあるフォルダーの "Manual" フォルダー

【関連項目】
	manmnt(1m)	man(5m)		regexp(7)

【注意】
	マニュアルファイルを変更した場合には manmnt コマンドで必ずインデッ
	クスファイルを更新する必要があります。

	現在プログラムの制限で、１つのタイトルのマニュアルが 30KB を越えて
	いる場合は後ろが切れます。(Mac版では 60KB)

【その他】
	この man は、UNIX の同名のコマンドと動作が大幅に異なります。
/***manmnt***/
MANMNT(1M)                    Mac-Shell Command                     MANMNT(1M)

【名前】
	manmnt - オンライン・マニュアルのメンテナンス

【形式】
	manmnt  [options]

【オプション】
	-M<man-dir>	マニュアルファイルのディレクトリを指定
	-u		インデックスファイルの更新
	-t		インデックスファイル内容の表示
	-w<help-file>	whatis ファイル用タイトル出力

【解説】
	マニュアルファイル（*.hlp）からインデックスファイル（*.idx）を作成
	します。

【ファイル】
	*/man?x.hlp	マニュアル内容
	*/man.idx	インデックスファイル
	*/whatis	一覧ファイル

	ディレクトリ	Msh のあるフォルダーの "Manual" フォルダー

【関連項目】
	man(1m)		man(5m)

【注意】
	マニュアルファイルを変更した場合には manmnt コマンドで必ずインデッ
	クスファイルを更新する必要があります。

【使用例】
	1) man.idx の更新
		% manmnt -u

	2) whatis 用タイトルの作成
		% manmnt -wman1u.hlp > work
		% ＊＊ whatis をエディタで修正 ＊＊

【その他】
	manmnt は Y.Tuda/Tom 作成の拡張コマンドです。
/***rm***/
RM(1M)                        Mac-Shell Command                         RM(1M)

【名前】
	rm - ファイルを削除する

【形式】
	rm [-riIfv] file..

【オプション】
	-r	file  がディレクトリであった場合に、ディレクトリ下の全ファ
		イルを再帰的に削除する。このオプションが指定されなかった場
		合には、ディレクトリを削除しようとするとエラーになる。
	-i	各ファイルを削除する前に確認する。
	-I	-i オプションがこの前に指定されていればそれを無効にする。
	-f	書き込み不可ファイル、隠しファイルも削除する。典型的には
		    rm -rf DIRECTORY
		のようにして、ディレクトリを全削除する時に使われる。このオ
		プションが指定されていなかった場合に、書き込み不可ファイル
		を削除しようとした場合には確認を取り、隠しファイルはそもそ
		も削除対象とならない。
	-v	どのファイルが削除されているのかを逐一表示する。

【解説】
	rm はファイルを削除します。
/***sort***/
SORT(1M)                      Mac-Shell Command                       SORT(1M)

【名前】
	sort - ファイルの整列, マージ

【形式】
	sort [-brnfu] [-t c] [-o outfile]
	     [+n1[.m1][brnf] [-n2[.m2][b]] …] [FILES…]

【オプション】
	-b	フィールドの位置を決めるときに、フィールドの先頭の空白を無視
	-r	ソートの順序を逆にする
	-n	文字列としてでなく、数値とみての比較を行う
	-f	ソートの際、英字の大文字小文字を区別しない
	-u	比較の結果同じと見なされる行が複数ある場合、そのうち1つだけを
		出力し他は捨てる。「同じと見なされる」かどうかは他の比較オプ
		ションに依存し、必ずしも全くの同一行だけが捨てられるのではない
	-t c	フィールドの区切り文字をcにする
	+n1.m1 -n2.m2
		ソートするにあたって、比較対象を第n1フィールドの第
		m1文字目から、第n2フィールドの第m2文字目の直前までとする。m1
		やm2を略するとフィールドの先頭になり、また、-n2.m2を略すると
		行末までが比較対象となる。このオプションは繰り返し指定できる。
		なお、sortコマンドでは、最初のフィールドを第0フィールドと数え、
		フィールドの最初の文字を第0文字目と数えるので注意のこと

【解説】
	sort はFILES の各行をASCIIコード順にソートし、結果を標準出力に出す。
	オンメモリでソートできない場合、一時ファイルを作る。

【バグ】
	フィールドの区切り文字には2バイト文字も使える。しかし、それ以外で
	は漢字を意識していないので、フィールド内の位置決めなどにあたって
	は、漢字は2文字と数える。

	UNIXのsortコマンドとほぼ同じ動作になるよう配慮して設計はしたが、
	細部で動作が異なる部分があるかも知れない。(何せUNIXのsortコマンド
	のマニュアルはambiguityが大きく、そのような部分では動作実験によっ
	て仕様を推定せざるを得なかったため)

	現在のところ、効率はあまり考えずに作ってあるので遅い。
/***tail***/
TAIL(1M)                      Mac-Shell Command                       TAIL(1M)

【名前】
	tail - ファイルの一部分だけを表示する

【形式】
	tail [-|+][#][clb][rh] [file...]

【オプション】
	+数字	指定された行(または文字、ブロック)数だけファイル先頭からス
		キップして、以降を表示する。

	-数字	<file>  の最後の指定された行(または文字、ブロック)数だけを
		表示する。

		c	文字を単位としてスキップ/出力する
		l	行を単位としてスキップ/出力する（デフォルト）
		b	ブロック(512バイト)を単位としてスキップ/出力する

		r	ファイルの内容を行毎に最後から逆に表示する。数字が
			指定されなかった場合にはファイルの全内容を逆順に表
			示し、数字が指定された場合には指定された行数だけフ
			ァイルの内容を逆順に表示する。
			表示の単位は行に限られ、文字やブロック単位ではでき
			ない。
		h	ファイルを複数指定すると、デフォルトでは各ファイル
			出力の先頭にへッダを付加する。
			このオプションを指定するとへッダを出力しない。

【解説】
	tail は <file> の内容を指定された位置から表示します。

【使用例】
	% tail ファイル名	…  最後の１０行を表示
	% tail -20 ファイル名	…  最後の２０行を表示
	% tail +10 ファイル名	…  １０行目からファイルの最後まで表示
	% tail -5r ファイル名	…  最後の５行を逆に表示
		12		16
		13		15
		14    ----->	14		最後の５行
		15		13
		16		12

	% tail -2b ファイル名	…  最後の 2 block を表示します
		注意	1 block は 512 Byteです。もしも block の切れ目に漢
			字データがある場合、正しく表示されない事があります。

	% tail -10j ファイル名	…  最後の１０文字を表示します。
		注意	改行も１文字として数えます。

【注意】
	tail はファイルの内容をメモリ中に保持するため表示すべき内容が 巨大
	になった場合には処理に失敗することがある。

	一行の長さが1024バイトを越えた場合には結果は保証されない。

	ファイル末の EOF(^Z) 文字はたまに誤って処理され、 行(文字)数がくる
	うこともあります。

【関連項目】
	head(1m)
/***vi***/
VI(1M)                        Mac-Shell Command                         VI(1M)

【名前】
	vi - Steive エディターの呼び出し

【形式】
	vi  [file...]

【解説】
	Stevie が起動されていなければ起動し、指定されたファイルを開きます。
	この時、ファイルが指定されなければ Stevie を表にもってくるだけです。

【アニュアル】


	STEVIE - vi「を目指した」エディター

		ユーザーレファレンス - 3.69/J1.3/M1.0.0

		Tony Andrews 著     太田純 訳
		(Macintosh 版 加筆  小山富夫)

		注意: このマニュアルは、全機種共通のものです

  1. 序章

	STEVIE は UNIX のエディター vi のインターフェースを真似てデ
	ザインされたエディターです。この名前  (ST  Editor  for  VI
	Enthusiasts)は、このエディターが最初に Atari ST のために書か
	れたことから来ています。現在のバージョンでは  UNIX、Minix
	(ST)、MS-DOS、OS/2 もサポートされていますが、名前はそのまま
	にしてあります。

	このプログラムはここ２年間の徹夜ハッキングの成果です。元とな
	ったバージョンは  Tim Thompson によって書かれ、USENET にポス
	トされました。これを出発点に、私はデータ構造を完全に書き直し、
	数々の機能を追加し、エディター全体の効率を改善しました。

	私はSTEVIE のことを vi「を目指した」エディターと述べました。
	これは、あまりに多くを望む人々への警告です。とは言うものの、
	全体としてこのエディターはかなり完全です。画面モードのコマン
	ドはほぼすべてがサポートされており、より重要な ex コマンドの
	いくつかもサポートされています。私は、細かい動作まで正しく行
	われるようにすることによって、vi  に近い感触が得られるように
	力を尽くしました。行の折り畳みが正しく行われるようにすること、
	正しい操作コマンドのサポート、タブに対して正しい位置にカーソ
	ルが置かれるようにすることなどは大変でしたが、エディターの使
	用感をviに近付けるためにはとても役に立っています。私はまた、
	オリジナルの設計には賛成できない場合でも、vi の振舞いから逸
	脱したいという誘惑に何とか抵抗してきました。

	残された最大の問題は、編集バッファー全体がメモリー上で管理さ
	れているということです。これにより、環境によっては編集できる
	ファイルの大きさが制限されることがあります。その他不足してい
	る機能には、名前付きバッファーとマクロなどがあります。実行速
	度はおよそ満足できるものですが、画面更新のコードについてはよ
	り効率的にすることが可能でしょう。この点は一般に、かなり遅い
	システムでなければ感じられません。

	STEVIE は自由に配布してかまいません。ソースは著作権で守られ
	ておらず、いかなる意味でも制限を与えられていません。読者がこ
	のプログラムを他人に譲るなら、すべてのドキュメントを、できれ
	ばソースも、含めてください。この点に特にこだわるつもりはあり
	ませんが、私は STEVIE をかなり移植しやすいようにしてきました
	し、できるだけ多くの人々がソースを見ることができるようになっ
	て欲しいのです。

	このドキュメントの残りの部分では、このエディターの操作方法に
	ついて述べています。すでに本物の vi に馴染んでいるユーザーに
	対するレファレンスとなるように書かれています。


  2. 形式

	次のコマンド形式が利用できます。

	stevie [ファイル ...]	指定されたファイルを編集する
	stevie -t タグ		与えられたタグの位置から編集を開始する
	stevie + ファイル	ファイルの末尾から編集を開始する
	stevie +行番号 ファイル	指定行から編集を開始する
	stevie +/パターン ファイル
				指定されたパターンを持つ行から編集を開始する

	コマンド行に（最初の形式を使って）複数のファイルを指定した場
	合、:n コマンドによって次のファイル、:N によって前のファイル
	に移ることができます。:rew を使えばファイルリストの先頭に戻
	ることもできます。

	起動時実行ファイル (小山 加筆)
		UNIX, Minix	.stevierc
		TOS, OS/2, DOS	stevie.rc
		Macintosh	_exrc


  3. コマンドオプションの設定

	:set コマンドを使うと、各種パラメーターを設定することができ
	ます。パラメーターはそれぞれ長い名前と省略名を持っており、い
	ずれを使うこともできます。真偽値パラメーターは次のように設定
	します。
		set showmatch

	解除するときは次のようにします。
		set noshowmatch

	数値パラメーターは次のように設定します。
		set scroll=5

	複数のパラメーターを１つのコマンドで設定することもできます。
		set novb sm report=1

	すべてのパラメーターの状態を見るときは、:set all としてくだ
	さい。何も引数を与えずに :set とすると、変更されたパラメータ
	ーだけが表示されます。利用できるパラメーターの名前、省略名、
	初期値、説明を以下に示します。

	autoindent	省略名: ai、初期値: noai、タイプ: 真偽値
			挿入モードで改行したとき、新しい行を直前の行と同
			じコラムから始める。本物の vi と異なり、字下げの
			位置より前まで削除することができる

	backup		省略名: bk、初期値: nobk、タイプ: 真偽値
			ファイルに書き出す際に、バックアップファイルを残す

	errorbells	省略名: eb、初期値: noeb、タイプ: 真偽値
			エラーメッセージが表示されるときにベルを鳴らす

	ignorecase	省略名: ic、初期値: noic、タイプ: 真偽値
			文字列探索を行う場合に、英字の大小を区別しない

	lines		省略名: lines、初期値: lines=25、タイプ: 数値
			画面上に実際に表示できる行数初期値は実際には計算
			機に依存するが、一般には 25 である

	list		省略名: list、初期値: nolist、タイプ: 真偽値
			タブと改行を表示文字として表示する

	modelines	省略名: ml、初期値: noml、タイプ: 真偽値
			ファイル中のモード行の処理を許可する

	number		省略名: nu、初期値: nonu、タイプ: 真偽値
			画面上の各行を行番号つきで表示する

	report		省略名: report、初期値: report=5、タイプ: 数値
			操作が行われたことが報告される最小の行数

	return		省略名: cr、初期値: cr、タイプ: 真偽値
			ファイルに書き出す際に行末を復帰・改行にする

	scroll		省略名: scroll、初期値: scroll=12、タイプ: 数値
			^D および ^U コマンドによってスクロールする行数

	showmatch	省略名: sm、初期値: nosm、タイプ: 真偽値
			)、}、] が入力されたとき、対応する (、{、[ が画
			面上にあれば、カーソルを短時間そこに移動すること
			によって知らせる

	showmode	省略名: mo、初期値: nomo、タイプ: 真偽値
			挿入モードにいるかどうかを最下行に表示する

	tabstop		省略名: ts、初期値: ts=8、タイプ: 数値
			１文字のタブを表す空白の数

	terse		省略名: terse、初期値: noterse、タイプ: 真偽値
			このオプションは現在のところ無視される。vi との
			互換性のためだけに用意されている

	tildeop		省略名: to、初期値: noto、タイプ: 真偽値
			これが設定されている場合、チルド ~ は（c、d、y
			と同じように）オペレーターとして扱われる。設定さ
			れていなければ通常どおりの動作を行う

	wrapscan	省略名: ws、初期値: ws、タイプ: 真偽値
			文字列探索の際にファイルの一端に到達すると、もう
			一方の端から探索を継続する

	vbell		省略名: vb、初期値: vb、タイプ: 真偽値
			可能なら表示ベルを使う（novb ではベル音になる）

	環境変数 EXINIT を使うと、起動時の初期値を次のように変更する
	ことができます。
		UNIX などの場合		setenv EXINIT="set sm ts=4"
		MS-DOS、OS/2 などの場合	set EXINIT=set sm ts:4 
		Macintosh の場合	Edit-Preferences メニューで設定	

	backup パラメーターが設定されていれば、エディターは書き出す
	すべてのファイルについてバックアップを保存します。ファイルに
	書き出している間は、安全のため常にバックアップが保存されてい
	ます。書き出しが終了した時点で、backup  パラメーターの設定に
	よってバックアップファイルが削除されるかどうかが決まります。

	通常の行末が復帰・改行であるような環境（たとえば MS-DOS、
	OS/2、TOS）では、return パラメーターを解除することによって、
	行末が改行だけになるようにファイルを書き出させることができま
	す。このパラメーターは UNIX 上では無視されます。

	linesパラメーターは、画面が何行あるかをエディターに伝えます。
	これはたとえば  ST （や EGA アダプター付きの OS/2 機）のよう
	に複数の画面解像度を持ったシステムでは有用です。lines パラメ
	ーターを使うことにより、複数の画面サイズが簡単に扱えます。


  4. 行編集コマンド

	STEVIE は、本物の vi が持つ行編集コマンドのいくつかをサポー
	トしています。コマンドによっては行範囲の指定を前置きする必要
	があります。行範囲を受け取るコマンドでは、次の行位置指定がサ
	ポートされています。
		行位置
		行位置 + 数値
		行位置 - 数値

	ここで「行位置」は次のいずれかです。
		行番号
		マーク（たとえば 'a あるいは 'b）
		'.'（現在行）
		'$'（最終行）

	行範囲 % は 1,$ の省略形という意味になります。

    4.1 モード行

	モード行はあまり知られていませんが、しばしば有用な vi の機能
	です。この機能を使うには、ファイルの先頭あるいは末尾５行の中
	に特別な文字列を置いておきます。ファイルを編集するとき、これ
	らの文字列が見つかると、行編集コマンドとして入力されたかのよ
	うに処理されます。これが有用となる１つの例として、ファイル単
	位で  tabstop パラメーターを設定する場合があげられます。次は
	モード行の例です。

		vi:set ts=4 noai:
		ex:45:

	モード行は、vi あるいは ex という文字列のあとにコロンで囲ん
	だコマンドを続けたものであると言うことができます。この行に他
	のテキストがあってもよく、また複数のモード行があってもかまい
	ません。複数のモード行がある場合、処理が行われる順序は保証さ
	れません。

	モード行の処理を可能にするには、ml パラメーターを設定してお
	きます。モード行の処理はエディターが起動された直後に行われる
	ので、このパラメーターは環境変数 EXINIT の中で設定しておきま
	す。なお、保安上の問題があるのでモード行の処理は標準では禁止
	されています。

    4.2 大域コマンド

	大域コマンドのうち限られた形式のものがサポートされており、次
	のコマンド形式が利用できます。

		g/パターン/X

	ここで X は d か p のいずれかであり、それぞれ与えられたパタ
	ーンにマッチした行を削除あるいは表示します。行範囲が指定され
	ると、その範囲の行だけがパターンにマッチするかどうか調べられ
	ます。行範囲が指定されていなければ、すべての行が対象となりま
	す。

	最後のコマンド文字が省略された場合、p が仮定されます。この場
	合にはその前のスラッシュも省略できます。現在のバージョンでは、
	大域コマンドによる行の削除に続く取り消し操作はサポートされて
	いません。

    4.3 置換コマンド

	置換コマンドは強力な機構を提供しており、画面モードで直接行う
	場合より複雑な置換を可能にします。このコマンドの一般的な形式
	は次のとおりです。

		s/パターン/置換文字列/g

	指定された範囲の各行（範囲が指定されなければ現在行）について、
	与えられた正規表現があるかどうか調べます。見つかると、パター
	ンにマッチした文字列は与えられた置換文字列で置き換えられます。
	置換文字列が空文字列のときは、パターンにマッチした文字列はす
	べて削除されます。

	最後の g を指定するかどうかは任意であり、指定した場合、各行
	に現れたすべてのパターンを置換することを示します。

	置換文字列中では、いくつかの特別な文字列が認識されます。アン
	パーサンド  & は、マッチしたパターン全体で置き換わります。た
	とえば、次のコマンドを使えばすべての foo や bar が二重引用符
	で囲まれます。

		1,$s/foo|bar/"&"/g

	特別な文字列 \n （ここで n は１～９の数字）は、パターン中の
	対応する位置の括弧付き正規表現にマッチした文字列で置き換えら
	れます。次のコマンドは、C の関数 foo の呼び出しにおける最初
	の２つのパラメーターを交換します。

		1,$s/foo\(([^,]*),([^,]*),/foo(\2,\1,/g

	大域コマンドと同様、現バージョンのエディターでは置換を取り消
	すことができません。

    4.4 ファイル操作コマンド

	次の表は、サポートされているファイル操作コマンドと、他で記述
	されていないいくつかの ex コマンドを示しています。

	:w		現在のファイルを書き出す
	:wq		ファイルに書き出して終了する
	:x		必要ならファイルに書き出して終了する
	ZZ		:x と同じ

	:e file		指定されたファイルを編集する
	:e!		変更を取り消して、現在のファイルを再編集する
	:e #		もう一方のファイルを編集する

	:w ファイル	編集バッファーを指定されたファイルに書き出す
	:x,yw ファイル	行 x から y までを指定されたファイルに書き出す
	:r ファイル	指定されたファイルを編集バッファーに読み込む

	:n		次のファイルを編集する
	:N		前のファイルを編集する
	:rew		ファイルリストの先頭に戻る

	:f		現在のファイル名を表示する
	:f 名前		現在のファイル名を変更する
	:x=		行位置 x の行番号を表示する

	:ta タグ	指定されたタグに移動する
	^]		:ta と同じだが、カーソル位置の単語をタグとする

	:help		コマンド一覧を表示する
	:ve		バージョン番号を表示する

	:sh		対話的にシェルを実行する
	:!cmd		コマンドを実行する

	Atari ST の上では、<HELP> キーを押すことによっても:help コマ
	ンドを実行することができます。実際にはこのコマンドは、サポー
	トされていない機能について注が付けられた vi のコマンドの一覧
	を表示します。

	以上のコマンドは vi とほぼ同様の動作をします。ほとんどのコマ
	ンドは、行われた変更を捨てるための !  後置子を（必要なら）サ
	ポートしています。


  5. 文字列探索

	文字列探索は vi と同様にサポートされており、通常の正規表現構
	文を使うことができます。これは、Henry Spencer の正規表現ライ
	ブラリーに手を加えたものを使うことによって行われます。私はラ
	イブラリーの外部にコードを加え、\<  および \> の拡張をサポー
	トするようにしました。パラメーター ignorecase を設定すれば、
	すべての文字列探索において英文字の大小を無視させることができ
	ます。


  6. オペレーター

	vi のオペレーター（d、c、y、!  、<、>）は真のオペレーターと
	して働きます。パラメーター  tildeop が設定されていれば、チル
	ドコマンドもオペレーターとして使うことができます。このパラメ
	ーターは標準では設定されていません。


  7. タグジャンプ

	タグジャンプは実装されており、かなり単純なバージョンの ctags
	がエディターとともに提供されています。現バージョンの  ctags
	は、特定の（しかしよく使われる）形式で書かれた関数とマクロを
	探し出します。詳細な議論についてはctags.doc をご覧ください。


  8. システム特有部分の説明

	以下の節では STEVIE が移植されたシステムに特有な付加的な情報
	について述べています。

    8.1 Atari ST
    <<TOS>>
	３種類の解像度すべてについてテストされていますが、低解像度と高解像
	度については中解像度ほどテストされていません。５０行高解像度モード
	では lines パラメーターを５０に設定することによって 利用することが
	できます。 別のやり方として、環境変数 LINES を設定しておくこともで
	きます。エディターが自分から画面の行数を設定することはありません。
	単に指定された行数を使って動作を行うだけです。

	矢印キー、また <INSERT>、<HELP>、<UNDO> キーはいずれも適切にマッピ
	ングされています。

    <<Minix>>
	Minix の下でもかなり同じ動作をするようになっていますが、キーボード
	マッピングの多くはサポートされていません。

    8.2 UNIX
	エディターは 4.2 BSD と同様に UNIX System V リリース３にも移植され
	ています。これは、主にプロファイル用のデータを得るために行ったもの
	であり、 UNIX バージョンが正しい動作を行うことにはそれほど労力を掛
	けていません。termcap 関数はサポートされていますが、エディターはま
	だ必要とする端末機能についてかなりやかましく、あまり賢くない端末に
	対して賢い動作を行う努力はほとんどしません。

    8.3 OS/2
	この移植を行った理由は、OS/2 開発キットに付属していた エディターが
	まったくひどいものだったからです。ansi  モードがオンになっているこ
	とを（ansi コマンドを使って）確認してください。OS/2 のコンソールド
	ライバーは行の挿入・削除をサポートしていません。このため、STEVIEは
	ドライバーを迂回して直接システムコールを行っています。これはすべて
	システム依存の部分で行われているため、やっつけ仕事の部分はすくなく
	とも１ヶ所にまとめられています。

	矢印キー、page up/down キー、home/end キーはすべて期待どおりに働き
	ます。ファンクションキーにはいくつかの有用なマクロが割り当てられて
	います。しかしこれは、マクロがエディターに正しくサポートされるまで
	のことです。現在のマッピングは次のとおりです。are:

		F1	:N <復帰>
		F2	:n <復帰>
		F3	:e # <復帰>
		F4	:rew <復帰>
		F5	[[
		F6	]]
		F7	C の宣言を擬似英語に変換する（cdecl を利用）
		F8	英語風の宣言を C の形式に変換する（cdecl を利用）
		F9	:x <復帰>
		F10	:help <復帰>
		S-F1	:N! <復帰>
		S-F2	:n! <復帰>

	F7 および F8 のマクロは、 cdecl プログラムが利用できることを仮定し
	ています。

    8.4 MS-DOS
	STEVIE は Microsoft C 5.1 を使って MS-DOS 3.3 に移植されています。
	キーボードのマッピングは  OS/2 と同じです。MS-DOS 版での唯一の問題
	は、画面更新のコードが非効率的であることが遅い機械の上で苦痛ととも
	に明らかになることです。

	MS-DOS 版では、行の挿入・削除が可能な拡張 コンソールドライバーが必
	要です。配布されたコードは、広く入手可能と思われる nansi.sys  に対
	応しています。

    8.5 Macintosh
	・File メニューは、ほぼ Mac 標準の動きをします(印刷機能未サポート)
	・Edit メニューの "Paste" はクリップボード上のテキストをカーソル位置
	  に挿入する
	・Edit メニューの "Undo" は u コマンドとほぼ同じ動きをする
	・スクロールバー/ウインドウのリサイズに対応している
	・未サポートの機能
		1. :!<command>, :sh	別プログラムの実行


  9. 実現されていない機能

	1. 利用できるメモリーより大きなファイルを編集する機能。
		これは私の使っている機械では問題ではありませんが、
		Minix-PC を使っている人々には相当な問題です。
	2. ファンクションキーをサポートするマクロ。
	3. より多くの set オプション。
	4. その他のさまざまな機能。


  10. 判明しているバグ、問題点

	1.  格納（yank）バッファーは静的に割り当てられたメモリーを使ってい
	    るため、大きな格納は失敗します。削除が格納バッファーより大きな
	    範囲にわたる場合、プログラムは実際にそれを行う前に確認の問い合
	    わせをします。こうなっているだけですから、テキストを移動すると
	    き限られた格納バッファーに戸惑わないでください。単に、一度によ
	    り小さな部分を移動するだけでよいのです。すべての内部バッファー
	    （格納、再実行、その他）は、メモリーを動的に割り当てるように変
	    更する必要があります。ただし、取り消しバッファーだけは現在でも
	    動的に割り当てられているため、すべての変更は取り消すことができ
	    ます。

	2.  挿入モードに長時間いると挿入バッファーがあふれることがある。こ
	    の場合、エディターはメッセージを表示してユーザーをコマンドモー
	    ドに投げ戻します。

	3.  現バージョンの置換および大域コマンド（すなわち :s/foo/bar ある
	    いは :g/foo/d ）は取り消すことができません。これは現在の取り消
	    しのためのコード設計によるものです。これらのコマンドを取り消す
	    ためには、一般に途方もない量のメモリーを必要とします。

	4.  他にもいくつか、それほど腹立たしくない問題があります。

	5.  その他(追加: 小山富夫)
	    ・まれに暴走する(ファイルの最後削除時など)
	    ・X(カーソルの前文字消去) の複数回指定ができない
	    ・:<cmd>(ex コマンド) の一部の動作が unix と異なる

	6. Macintosh版固有の問題
	    ・全体的に処理が遅い(特に画面スクロール)
	    ・:!<command> ができない
	    ・Print 機能が未サポート


  12. 最後に

	このエディターはかなり安定した状態に至っており、私がこのエディター
	を使っているシステムでは十分な効率で動いています。このため、私は現
	在ではかなりの割り合いで保守モードにいます。行わなければならないこ
	とが、いまだにかなり残っています。画面更新のコードは依然まったく非
	効率であり、格納（yank）・書き込み（put）のコードは依然として 原始
	的です。私はまだバグの報告に興味があり、いまだ新しい機能を機会ある
	ごとに追加していますが、変更の頻度は今では下がっています。

	私は、このエディターの元となったバージョンを書いたことについて
	Tim  Thompson に感謝しています。彼のプログラムはよく構造化され、ま
	ったく読みやすいものでした。作業のためのよい基盤を与えてくれたこと
	に感謝します。自分自身の変更を送ってくれた多くの STEVIE のユーザー
	にも感謝します。私が受け取った多くの変更は、私のサポートするすべて
	のシステムに移植可能だったわけではありませんが、移植可能な実現方法
	を可能な限りエディターに取り入れていこうと努力しているところです。

	もしもあなたがこのファイルを読んでいて、 STEVIE のソースコードが入
	手できなければ、返送用の切手を付けてフロッピーディスクを下記の住所
	に送れば入手できます。こちらが書き込めるフロッピーディスクは、
		Atari ST（SS または DS）、
		MSDOS（360Kあるいは 1.2M）
	です。返送用の切手を入れることを忘れないでください。私はこのプログ
	ラムで金儲けするつもりはありませんが、かといって損をするつもりもな
	いのですから。

		Tony Andrews		UUCP: onecom!wldrdg!tony
		5902E Gunbarrel Ave.
		Boulder, CO 80301


  文字機能一覧

	次の一覧は、エディターによって使われる各文字の意味を述べてい
	ます。場合によっては、文字はコマンドモードと挿入モードでそれ
	ぞれの意味を持っていますが、これらはすべて記述されています。

	^@	空文字。どのモードでも使われない。この文字はファイル
		中に現れることができない。これは vi の場合と同じであ
		る
	^B	１画面戻る
	^D	半画面上にスクロールする
	^E	画面を１行上にスクロールする
	^F	１画面進む
	^G	:f コマンドと同じ。ファイル情報を表示する
	^H	（後退文字）コマンドモードでは１文字左に移動する。挿
		入モードでは入力された最後の文字を消去する
	^J	カーソルを１行下に移動する
	^L	画面を消去・再表示する
	^M	（復帰文字）次の行の最初の非空白文字に移動する。挿入
		モードでは入力のために新しい行を開始する
	^N	カーソルを１行下に移動する
	^P	カーソルを１行上に移動する
	^U	半画面下にスクロールする
	^Y	１行画面を１行下にスクロールする
	^[	エスケープはコマンドモードでは入力中のコマンドを取り
		止める。また、挿入モードを終了するために使われる
	^]	カーソルが置かれている単語が示す名前を持つタグに移動
		する
	^`	サポートされているなら、:e # と同じ（システムに依存
		する）
	空白	カーソルを１コラム右に移動する
	!	フィルターオペレーターは常に、ある範囲の行に対して
		操作を行う。それらの行をあるプログラムの入力として渡
		し、それらをプログラムの出力によって置き換える。短縮
		コマンド  !!  を使えば、（前置する回数で指定した）数
		行をフィルターに掛けることができる。コマンド !  は最
		後に実行されたコマンドで置き換えられるので、!!!   は
		与えられた数の行を最後に指定されたコマンドに渡して実
		行する
	$	現在行の末尾に移動する
	%	カーソルが括弧 ()、波括弧 {}、ブラケット [] の上にあ
		れば、対応する括弧に移動する
	'	直前に 'a あるいは 'b などでマークされた位置にカーソ
		ルを移動する。カーソルはマークされた行の先頭に移動す
		る。特別なマーク '' は「直前の文脈」を指す
	+	コマンドモードでは復帰文字と同じ
	,	直前の t、T、f、F コマンドを逆向きに実行する
	-	直前の行の最初の非空白文字に移動する
	.	最後の編集コマンドを繰り返す
	/	前向きの文字列探索コマンドを開始する。文字列探索は閉
		じるスラッシュで終わっていてもよい。スラッシュ自身を
		探すためには、探索文字列の中で \/ を用いる
	0	現在行の先頭に移動する。繰り返しの回数としても使われ
		る
	1-9	コマンドに繰り返し回数を前置するために使う
	:	ex コマンドを開始する
	;	直前の t、T、f、F コマンドを繰り返す
	<	左シフトのオペレーター
	>	右シフトのオペレーター
	?	/ と同じだが、逆向きに探索する
	A	現在行の後に追加を開始する
	B	空白で区切られた単語１つだけ後ろに戻る
	C	現在行のカーソル以降を変更する
	D	現在行のカーソル以降を削除する
	E	空白で区切られた単語の末尾に移動する
	F	ある文字を現在行の中で逆向きに探す
	G	指定された行番号の行に移動する（行番号省略時はファイ
		ルの末尾）
	H	画面上の先頭行の最初の非空白文字に移動する
	I	現在行の最初の非空白文字の前に挿入を開始する
	J	２つの行をつなぐ
	L	画面上の最終行の最初の非空白文字に移動する
	M	画面上の中央行の最初の非空白文字に移動する
	N	最後の文字列探索を逆向きに実行する
	O	新しい行を現在行の上に開き、挿入を開始する
	P	格納・削除バッファーの内容を現在カーソル位置の直前に
		挿入する
	R	エスケープが入力されるまで、文字列を置き換える。挿入
		モードと同様だが、挿入の代わりに置換を行う。置換モー
		ドで改行を入力することは挿入モードと同じであるが、新
		しい行で置換が継続される
	T	与えられた文字を逆向きに探し、その手前まで移動する
	U	現在行を変更前の状態に戻す
	W	空白で区切られた単語１つだけ前に進む
	X	カーソル直前の１文字を削除する
	Y	現在行を格納するyy と同じ
	ZZ	エディターを終了する。必要なら変更を保存する
	[[	C の関数１つだけ後ろに戻る
	]]	C の関数１つだけ前に進む
	^	現在行の最初の非空白文字に移動する
	`	これは ' と同様に与えられたマークに移動する。この２
		つのコマンドの違いは、オペレーターとともに使われると
		きに重要である。２つの違いは正しくサポートされている。
		何を言っているのかわからないのならば、あなたにとって
		は大したことではないので、気にする必要はない。
	a	カーソルの後にテキストを追加する
	b	単語１つだけ後ろに戻る
	c	変更オペレーター
	d	削除オペレーター
	e	単語の末尾に移動する
	f	ある文字を現在行の上で探す
	h	１コラム左に移動する
	i	カーソルの前にテキストを挿入する
	j	１行下に移動する
	k	１行上に移動する
	l	１コラム右に移動する
	m	現在位置にマークを設定する（たとえばma あるいは mb）
	n	直前の文字列探索を繰り返す
	o	新しい行を開き、テキストの挿入を開始する
	p	格納・削除バッファーの内容をカーソルの後に書き込む
	r	１文字を置き換える
	s	１文字を文字列で置き換える
	t	与えられた文字を現在行の上で前向きに探し、その手前ま
		で移動する
	u	直前の変更を取り消す
	w	１単語前に移動する
	x	カーソル位置の文字を削除する
	y	格納オペレーター
	z	現在行が先頭に（z復帰）、中央に（z. ）、末尾に（z-）
		来るように画面を書き直す
	|	前置きされた数値で示されるコラム位置に移動する
	~	カーソル位置の文字（が英字なら）の大小を反転し、右に
		移動する。パラメーター  tildeop が設定されていれば、
		このコマンドはオペレーターとして働く


  CONTENTS

			STEVIE - ユーザーガイド

				CONTENTS


	1.  序章 .............................................   1

	2.  エディターの起動 .................................   2

	3.  コマンドオプションの設定 .........................   2

	4.  行編集コマンド ...................................   4
	    4.1 モード行 .....................................   5
	    4.2 大域コマンド .................................   5
	    4.3 置換コマンド .................................   6
	    4.4 ファイル操作コマンド .........................   6

	5.  文字列探索 .......................................   7

	6.  オペレーター .....................................   8

	7.  タグジャンプ .....................................   8

	8.  システム特有部分の説明 ...........................   8
	    8.1  Atari ST ....................................   8
	    8.2  UNIX ........................................   8
	    8.3  OS/2 ........................................   9
	    8.4  MSDOS .......................................   9
	    8.5  Macintosh ...................................   9

	9.  実現されていない機能 .............................  10

	10. 判明しているバグ、問題点 .........................  10

	11. 最後に ...........................................  11

	文字機能一覧 .........................................  12
/***wc***/
WC(1M)                        Mac-Shell Command                         WC(1M)

【名前】
	wc - ファイル中の行/単語/文字数を数える

【形式】
	wc [-lwc] [file...]

【オプション】
	-l	行数を数える
	-w	単語数を数える（スペース、タブで区切られた文字列が一単語）
	-c	文字数を数える（漢字は2文字と数えるため、 実際にはバイト数
		を数えています）

	オプションを指定しなかった場合には '-lwc' と見なします。

【解説】
	wc ファイル中の行/単語/文字数を数えるコマンドです。
